table of contents
SYSCALL(2) | Руководство программиста Linux | SYSCALL(2) |
ИМЯ¶
syscall - непрямой системный вызов
ОБЗОР¶
#define _GNU_SOURCE /* см. feature_test_macros(7) */ #include <unistd.h> #include <sys/syscall.h> /* для определений SYS_xxx */ int syscall(int number, ...);
ОПИСАНИЕ¶
syscall() выполняет системный вызов, чей интерфейс ассемблерного языка был указан значением number и заданными аргументами. Символьные константы для системных вызовов можно найти в заголовочном файле <sys/syscall.h>.
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ¶
Возвращаемое значение определяется вызываемым системным вызовом. При успешном выполнении обычно возвращается 0. При ошибке возвращается -1, при этом код ошибки сохраняется в errno.
ЗАМЕЧАНИЯ¶
Вызов syscall() впервые появился в 4BSD.
ПРИМЕР¶
#define _GNU_SOURCE #include <unistd.h> #include <sys/syscall.h> #include <sys/types.h> int main(int argc, char *argv[]) {
pid_t tid;
tid = syscall(SYS_gettid); }
СМОТРИТЕ ТАКЖЕ¶
2007-07-26 | Linux |